A web application may include applications that are accessed over a network, such as, for example, the internet or an intranet. Web applications may also include computer software applications that are coded in a browser-supported language, such as, for example, JavaScript, combined with a browser-rendered markup language, such as, for example, HyperText Markup Language (HTML). Web applications may rely on a web browser to render the application executable. Examples of web applications may include webmail, online retail sales, online auctions and other functions.
For a web application, an end user may browse web sites according to their available or preferred operating system (OS) and browser combination. Examples of operating systems may include WINDOWS XP and MAC 10.6, and various versions thereof. Examples of browsers may include INTERNET EXPLORER, FIREFOX, SAFARI and GOOGLE CHROME, and various versions thereof.
In order to meet user requirements, applications and web sites may need to undergo browser and OS compatibility testing. For example, an application may include static and dynamic objects that may display and operate differently from a base browser and OS combination for which the application is designed for, compared to other browser and OS combinations that may be chosen by a user for operating the application. Objects may include, for example, graphics, text, drop down menus etc., and generally, any component of a website page. Browser and OS compatibility testing may thus determine compatibility of a public facing web application with a particular OS and browser combination. Browser and OS compatibility testing may also account for which browser and OS combination is critical to support, and how an application may be evolved for supporting new OS and browser versions, as well as older OS and browser versions.
Browser and OS compatibility testing may be performed by visually comparing a screen-shot of an application on a base browser and OS combination with other browser and OS combinations. However, such compatibility testing techniques are impractical due to the number of available applications, and browser and OS combinations. Such compatibility testing techniques are also inaccurate, and are further impractical due to their limitations in accounting for changes in applications, as well as changes in operating systems and browsers.